Method and system for detecting dissolve transitions in a video signal

ABSTRACT

A method and system for detecting dissolve transitions in a digital video signal made up of a series of video images is disclosed. In accordance with the method of the invention, a plurality of the video images are segmented into a number of cells wherein each cell comprises a number of pixels each having a pixel intensity value representing the intensity of the pixel. A plurality of cell contrast vectors each associated with one of the segmented video images is generated. Each element of the cell contrast vector is associated with one of the cells and comprises the standard deviation of the pixel intensity values for the pixels in that cell. A dissolve is detected for a video image in response to the cell contrast vector for that image.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is related to U.S. application Ser. No. 08/660,354,filed on Jun. 7, 1996 by E. North Coleman, Jr. and entitled "Method andSystem for Detecting Cuts In A Video Signal," U.S. Pat. No. 5,767,923.

This application is related to U.S. application Ser. No. 08/660,641,filed on Jun. 7, 1996 by E. North Coleman, Jr. and entitled "Method andSystem for Detecting Transitional Markers Such As Uniform Fields In AVideo Signal," which issued as U.S. Pat. No. 5,778,108 on Jul. 7, 1998.

This application is related to U.S. application Ser. No. 08/660,564,filed on Jun. 7, 1996 by E. North Coleman, Jr. and entitled "Method andSystem for Detecting Fade Transitions In A Video Signal," now abandoned.

This application is related to U.S. application Ser. No. 08/660,292,filed on Jun. 7, 1996 by E. North Coleman, Jr. and entitled "Method andSystem for Detecting The Type Of Production Media Used To Produce AVideo Signal," which issued as U.S. Pat. No. 5,734,735 on Mar. 31, 1998.

This application is related to U.S. application Ser. No. 08/994,040,filed on Dec. 18, 1997 by E. North Coleman, Jr. and entitled "Method andSystem for Detecting Blank and Uniform Fields In A Video Signal,"pending.

These applications have all been assigned to Electronic Data SystemsCorp. of Plano, Tex.

TECHNICAL FIELD OF THE INVENTION

This invention relates generally to video signal processing and moreparticularly to a method and system for detecting dissolve transitionsin a video signal.

BACKGROUND OF THE INVENTION

A typical television commercial, television program, or movie comprisesa series of video clips pieced together. For example, if a scene in atelevision program is being filmed by cameras at three differentlocations in a room, that particular scene may include a series of videoclips wherein each of the clips was originally recorded by one of thethree cameras. A particular video clip is normally separated from anadjacent video clip using a common video transitional marker such as acut, dissolve, or fade. Blank or uniform fields may also be used toprovide visual separation between video clips.

As digital storage becomes more economical, owners of rights to videorecordings have begun to digitally archive those recordings. Digitalarchiving allows video owners to easily preserve old video recordingsthat are in danger of deterioration or destruction. Digital archivingalso allows video owners to separate recordings into individual clipsfor marketing purposes. For example, a clip from a television program ora movie might be used in a television commercial or in an advertisementplaced on the Internet. Also, individual video clips might beincorporated into multimedia software. Television news organizations maymore easily share digital video recordings that have been divided upinto individual video clips.

Separating digitized video recordings into individual video clips can bea costly process. Initially, separation of digitized recordings intoindividual video clips was performed manually. An operator ofspecialized equipment and/or software would manually locate the varioustransitional markers in the digitized video recording and record theposition of those transitional markers.

Techniques have also been developed to automatically identifytransitional markers in digitized video recordings using computerhardware, computer software, or a combination of both. Unfortunately,existing techniques use global metrics which focus on each individualvideo image as a whole to determine image to image (often field tofield) similarity. These techniques are not as accurate as is desirablebecause the use of global metrics neglects the local spatial informationcontained in a video image. Moreover, some existing techniques makevarious measurements of the RGB color components of a video image. Thesetechniques are not easily adapted to process both black and white andcolor video recordings.

SUMMARY OF THE INVENTION

The invention comprises a method and system for detecting dissolvetransitions in a digital video signal. The invention employs a techniquethat segments video images into a series of cells so as to retainspatial information to achieve greater accuracy in predicting dissolvetransitions in a video signal. In accordance with the method of theinvention, a dissolve transition is detected in a digital video signalmade up of a series of video images. A plurality of the video images aresegmented into a number of cells. Each cell includes a number of pixelseach having a pixel intensity value which represents the intensity ofthat pixel. A plurality of cell contrast vectors each associated withone of the segmented video images is generated. Each element of the cellcontrast vector is associated with one of the cells and comprises thestandard deviation of the pixel intensity values for the pixels in thatcell. A dissolve is detected for a video image in response to the cellcontrast vector for that image.

The invention has several important technical advantages. The inventioncan be used to locate the exact point in the recording at which adissolve transition occurs to allow a viewer of the recording to jump tothat point. In other words, the invention allows intelligent randomaccess to the recording. This allows the owner of a video recording toeasily index the recording so as to be able to quickly locate the pointin time at which each dissolve transition occurs in the video recording.The invention allows the owner of a video recording to automaticallyarchive the video recording because the invention can accuratelyidentify the location of dissolve transitions and create a list of thoselocations for archival of video clips. Such automated archival may alloweasy random access type retrieval of a specific video clip. Editing ofthe recording at a later time may be simplified by this feature.

The invention achieves high accuracy in predicting dissolve transitionsin digital video signals as the invention captures a coarse level ofspatial information about individual video images in a digital videosignal. This information is used in the disclosed method of identifyingdissolve transitions. The use of spatial information allows moreaccurate identification of dissolve transitions in digital videorecordings. Because the invention uses a coarse level of spatialinformation, the invention has higher noise immunity than some existingtechniques of identifying dissolve transitions.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the present invention and theadvantages thereof, reference is now made to the following descriptionstaken in conjunction with the accompanying drawings in which:

FIG. 1 illustrates a system constructed in accordance with the inventionfor identifying transitional markers in a digital video signal;

FIG. 2 illustrates an exemplary diagram of the video transitionapplication of FIG. 1;

FIG. 3 illustrates the segmentation of a single example video image ofthe digital video signal;

FIG. 4 illustrates a flow chart of a method of detecting cuts in adigital video signal in accordance with the invention;

FIG. 5 illustrates a flow chart of a method for detecting blank and/oruniform video images in a digital video signal in accordance with theinvention;

FIG. 6 illustrates a flow chart of a method for detecting fadetransitions in a digital video signal in accordance with the invention;

FIG. 7 illustrates a flow chart of a method for detecting dissolvetransitions in a digital video signal in accordance with the invention;and

FIG. 8 illustrates a flow chart of a method for detecting the type ofproduction media used to create a digital video signal in accordancewith the invention.

DETAILED DESCRIPTION OF THE INVENTION

The preferred embodiment of the present invention and its advantages arebest understood by referring to FIGS. 1-8 of the drawings, like numeralsbeing used for like and corresponding parts of the various drawings.

FIG. 1 illustrates a video event detection system 10 that comprises oneembodiment of the present invention. In this embodiment, video eventdetection system 10 comprises computer software running on a generalpurpose computer known as a Sun SPARC workstation. Video event detectionsystem 10 may be adapted to execute any of the well known MSDOS, PCDOS,OS2, UNIX, Motif, MAC-OS™, X-WINDOWS™, or WINDOWS™ operating systems, orother operating systems. Video event detection system 10 comprisesprocessor 12, input device 14, display 16, memory 18 and disk drive 20.The present invention includes computer software that may be stored inmemory 18 or on disk drive 20 and is executed by processor 12. Diskdrive 20 may include a variety of types of storage media such as, forexample, floppy disk drives, hard disk drives, CD ROM disk drives, ormagnetic tape drives. Data may be received from a user of video eventdetection system 10 using a keyboard or any other type of input device14. Data may be output to a user of video event detection system 10through display 16, or any other type of output device.

Video event detection system 10 includes video transition application 22which is a computer software program. In FIG. 1, video transitionapplication 22 is illustrated as being stored in memory 18 where it canbe executed by processor 12. Video transition application 22 may also bestored in disk drives 20. Video transition application 22 processesdigital video signals and identifies various transitional eventsoccurring in the digital video signals. In this example, a digital videosignal 24 is stored on disk drives 20. Alternatively, video eventdetection system 10 could receive an analog video signal from anexternal source, digitize that video signal, and store it on disk drives20 or in memory 18. A digital video signal could also be received froman external source. The operation of video transition application 22will now be described in connection with FIGS. 2-8.

FIG. 2 illustrates a block diagram of video transition application 22which is constructed in accordance with the invention. As shown, videotransition application 22 comprises low level processor 26, whichoutputs data to mid-level processor 28. The output of mid-levelprocessor 28 is provided to cut detector 30, blank/uniform imagedetector 32, fade detector 34, dissolve detector 36, and media detector38. The output could be provided to other detectors or a subset of thesedetectors. The outputs of each of the detectors are provided to eventresolver 40. In this embodiment, each of these components of videotransition application 22 comprise computer software. All or a portionof these functions could also be performed using hardware. In addition,although the functions of video transition application 22 have beendivided among several software routines, the structure of videotransition application 22 could be changed without departing from thescope of the invention.

Before discussing the operation of each component of video transitionapplication 22, a brief overview of the operation of video transitionapplication 22 is appropriate. Low level processor 26 receives a videosignal comprising a series of video images and segments each video imagein a digital video signal into a plurality of cells. Each cell includesa number of pixels which are each, in turn, associated with a pixelintensity value. Low level processor 26 generates a cell contrast vectorand a cell intensity vector for each segmented video image. Thecomponents of the cell intensity vector are each associated with one ofthe cells of the segmented video image and comprise the average pixelintensity value for pixels in that cell. Each element of the cellcontrast vector is associated with one of the cells in the segmentedvideo image and comprises the standard deviation of the pixel intensityvalues for pixels in that cell. Although each contrast vector element iscorrelated to the contrast of a particular cell, it is not a measure ofthe contrast.

Low level processor 26 computes the cell contrast and cell intensityvectors for each segmented video image and passes those vectors tomid-level processor 28. Based upon the cell contrast vector and cellintensity vectors, mid-level processor 28 computes an inter-imagesimilarity value, a maximum cell contrast value, a maximum cellintensity value, a contrast change vector, and an intensity changevector for each segmented video image.

The inter-image similarity value for a particular video image comprisesthe cosine of the angle between the cell contrast vector for that videoimage and the cell contrast vector for another video image--in thisembodiment, the immediately prior field of the digital video signal. Themaximum cell contrast value for a particular video image comprises thelargest component of the cell contrast vector for that image. Again, theterm contrast refers to a value correlated to the contrast of aparticular cell comprising the standard deviation of the pixel intensityvalues for that cell. Similarly, the maximum cell intensity for aparticular image comprises the largest component of the cell intensityvector for that image. The contrast change vector for a particular imagecomprises the cell contrast vector for that image minus the cellcontrast vector for another video image--in this embodiment, the samefield in the immediately prior frame of the digital video signal.Similarly, the intensity change vector for a particular video imagecomprises the difference between the cell intensity vector for thatvideo image and the cell intensity vector for another video image--inthis embodiment, the same field in the immediately prior frame of thedigital video signal.

After computing these values and vectors, mid-level processor 28 outputsthem to cut detector 30, blank/uniform image detector 32, fade detector34, dissolve detector 36 and media detector 38. Only the values andvectors used by each particular detector are provided to that detector.The operation of each of the detectors 30-38 will be explained morefully in connection with FIGS. 4-8. Each of the detectors 30-38 detectsvarious transitional markers within the digital video signal. When atransitional marker has been detected, the appropriate detector 30-38generates an event which is passed to event resolver 40. Event resolver40 processes the transitional markers and generates a timelineannotating the point at which each particular transitional eventoccurred. In addition, event resolver 40 resolves conflicts betweenevents based upon a priority scheme so as to filter out overlappingevents.

The operation of each component of video transition application 22 willnow be described in more detail. Low level processor 26 processes adigital video signal. At some prior time, a digital video signal wasreceived by video event detection system 10. Alternatively, a raw videosignal may have been acquired through analog-to-digital conversionperformed by a video frame grabber. The raw video may be a three channelsignal, either red-green-blue (RGB) or luminance-chromananceblue-chrominance red (YCbCr), or a single channel luminance signal. Whena luminance signal is not directly available, as in the case of RGB, itis obtained by software calculation. The National Television SystemsCommittee (NTSC) standard color primary to luminance signal conversionformula may be used to obtain a luminance signal. In accordance withthat formula, intensity for a particular pixel equals 0.3 times the redvalue for that pixel plus 0.59 times the green value for that pixel plus0.11 times the blue value for that pixel. An intensity (or luminance)value for each pixel is determined for each digitized image (each fieldin this embodiment) in the digital video signal. Each NTSC video signalcomprises a series of frames, each frame further comprising two fields.In this embodiment, then, a video image comprises one field of a digitalvideo signal.

The intensity value for each pixel in a digitized video image in thisembodiment lies within the range between 0 and 255 (8-bit resolution).The source luminance signal may be down sampled by dropping values toreduce the scan line pixel count by one-half so as to decreasesubsequent image processing times.

Low level processor 26 segments each video image (each field in thisembodiment) into a number of cells. Each cell comprises a number ofpixels. In this embodiment, each video image is divided into 63 cellsusing a 9×7 grid. FIG. 3 illustrates a segmented video image 42 that hasbeen segmented into 63 cells. Segmenting a video image in this wayallows the capture of spatial information about each video image. Thisspatial information is useful in accurately identifying transitionalmarkers within the digital video signal.

Each digital video image can be segmented into a finer or coarser gridwithout departing from the teachings of the invention. If the videoimage is divided too coarsely, spatial information is lost andtransitional marker detection may become less accurate. If the videoimage is segmented more finely, the noise immunity of the inventiondecreases, which can also affect the accuracy of transitional markeridentification. In this embodiment, each video image comprises 320×240pixels. Each cell of the segmented image comprises a square of 32 pixelsby 32 pixels. As illustrated in FIG. 3, an unused 16 pixel horizontaland 8 pixel vertical border appears along each side of the segmentedvideo image 42. These pixels are preferably unused as pixels lying inthe border regions may not reliably carry picture content when scannedby video capture devices.

Each segmented video image, then, may be associated with an array ofpixel intensity values, I_(k). This intensity array comprises 320 rowsby 240 columns in this embodiment and may be used to generate a cellintensity vector and a cell contrast vector for each video image. Inthis embodiment, the cell intensity vector for a particular segmentedvideo image has an element for each cell in the segmented video image.Each element is associated with a particular cell of the segmented videoimage and comprises the mean of the pixel intensity values for eachpixel in that cell. The intensity vector, μ_(k), can be calculated usingFormula (1) where the value p specifies the linear index of a cell'smean intensity value given cell indexes m and n. In this embodiment, theentry p=0 in each feature vector corresponds to the upper lefthand cellof segmented video image 42, and the entry p=62 corresponds to the lowerright-hand cell of segmented video image 42. ##EQU1## Each element ofthe cell intensity vector, μ_(k), thus provides a measure of a cell'simage brightness. Some of the cells could be omitted from the vector orsome of the pixels could be omitted from the mean calculation withoutdeparting from the scope of the invention. Also, the elements of thecell intensity vector might be proportional to the average of the pixelintensity values for a given cell.

A cell contrast vector, σ_(k), may also be computed for each video imageusing the array of intensity values, I_(k). Each element of the cellcontrast vector is associated with one of the cells of segmented videoimage 42 and comprises the standard deviation of the pixel intensityvalues for each pixel in that cell. The cell contrast vector, σ_(k), maybe computed using Formula (2) as follows: ##EQU2## where the value pspecifies the linear index of a cell's contrast value given cell indexesm and n. Again, entry p=0 in the contrast vector corresponds to theupper lefthand cell of segmented video image 42 and the value p=62corresponds to the lower right-hand cell of segmented video image 42.Each component of the cell contrast vector is used as a measure of aparticular cell's image contrast. As with the cell intensity vector,some of the cells could be omitted from the vector or some of the pixelsomitted from the standard deviation calculation without departing fromthe scope of the invention.

Low level processor 26 outputs the cell contrast vector and cellintensity vector for each segmented video image to mid-level processor28. Mid-level processor 28 then computes five time domain values asfunctions of the cell contrast vector and cell intensity vector for eachvideo image. Collectively, these values form five time domain signals.These time domain signals comprise three scalar values and two vectorvalues. The scalar values include the inter-image similarity value,maximum cell contrast value, and maximum cell intensity value. Thevector values include the contrast change vector and intensity changevector. Other values could be computed without departing from the scopeof the invention.

The maximum cell intensity value, B_(k), for image number k comprisesthe largest element of the cell intensity vector for image number k andcan be computed using the following formula:

    B.sub.k =max{μ.sub.k  p!|p=0,1, . . . , 62}k=0,1, . . . , N-1(3)

The maximum cell contrast value, C_(k), for image number k comprises thelargest element of the cell contrast vector for that image and can becomputed using the following formula:

    C.sub.k =max{σ.sub.k  p!|p=0,1, . . . , 62}k=0,1, . . . , N-1(4)

The inter-image similarity value, S_(k), for image number k representsthe cosine of the angle between the cell contrast vectors for adjacentvideo images (adjacent fields in this embodiment). An angular distancemeasure was selected to compare similarity between images becauseangular distance is more tolerant of overall scene brightness changesthan Euclidean distance measures. For example, if an actor causes asudden change in scene brightness such as by turning a light on in aroom during a scene in the video, a Euclidean distance measure may causean erroneous transitional marker detection. The angular measurerepresented by the inter-image similarity value, S_(k), will functionproperly in such a situation and reduces the number of falsetransitional marker detections. Inter-image similarity value, S_(k), canbe computed using the following formula: ##EQU3##

Mid-level processor 28 also computes two vector values--the intensitychange vector and contrast change vector. The intensity change vector isused to measure individual cell intensity changes while the contrastchange vector is used to measure individual cell contrast changes. Inthis embodiment, these changes are measured by cell differences betweenfields of the same polarity (even or odd) in adjacent frames. Theintensity change vector, b_(k), for image k can be computed using thefollowing formula: ##EQU4## The contrast change vector, c_(k), for imagek can be calculated using the following formula: ##EQU5##

The outputs of mid-level processor 28 are provided to each of thedetectors 30-38. The scalar and vector values computed by mid-levelprocessor 28 for each individual video image can be combined to formtime domain signals. The detectors 30-38 may then filter such signals toaid in detecting transitional markers in the video signal. In thisembodiment, these mid-level signals reflect a sampling rate of 59.94 Hz,the standard NTSC field broadcast rate. This sampling rate is used tomeasure event duration when developing event models for each detector.If the sampling rate changes, modification should also be made to theevent detection models.

The operation of each of the detectors 30-38 will now be described inconnection with FIGS. 4-8. Each of the detectors 30-38 comprises asoftware process but could also comprise specialized hardware.

FIG. 4 illustrates a method of detecting a cut in a digital videosignal. This method is performed by cut detector 30 in video transitionapplication 22. A cut is an abrupt transition from one camera shot toanother. In a digitized NTSC video signal, this transition is seen as asignificant change in the picture from field to field--for example, fromfield k-1 to field k. Its characteristic appearance to the viewer is aquick spatiotemporal change of scene or camera position. Cuts oftenoccur during a change from one scene to another and during shiftsbetween different camera angles within a scene.

The method of FIG. 4 begins at step 44 with initialization and whateverpreparation of the video signal is required. At the conclusion of step44, the process is prepared to operate on a digital video signal. Instep 46, a video image (in this embodiment, a field of an NTSC videosignal) of a digital video signal is received by low level processor 26.Next, in step 48, low level processor 26 segments the video image intocells and computes the cell contrast and cell intensity vectors asdescribed above. The cell contrast and cell intensity vectors are passedas outputs to mid-level processor 28. Then, in step 50, mid-levelprocessor 28 computes the inter-image similarity value and contrastchange vector for the video image, as described above. These values areoutput to cut detector 30.

In step 52, cut detector 30 analyzes the inter-image similarity signalformed by the series of inter-image similarity values for a series ofvideo images to identify characteristic spikes induced in this signal bya cut in the digital video signal. A spike filter is applied to theinter-image similarity signal in order to isolate spikes of a width nogreater than two video images (two fields in this embodiment). Thesensitivity of the spike filter in terms of the width of the spikesisolated may vary depending upon the capture frame rate and/or the scanmethod of the video signal. The spike filter helps to prevent false cutdetection due to motion in the video signal. The implemented spikefilter preferably operates over a -10 to +10 video image window centeredabout the video image under consideration. Each video image is a fieldof an NTSC signal in this embodiment. The filtered spike size, g k! forvideo image k is defined by the following formulas:

    G.sub.k =min{S k-m!|m=1,±2,±3, . . . , ±10}(8) ##EQU6## where g k! represents the distance that a given spike extends below the minimum similarity value of a neighboring video image from within the filtering window.

Continuing in step 52, cut detector 30 also processes the contrastchange vector to generate a contrast difference value for a particularvideo image. The contrast difference value, Gc, comprises a count of allelements of the contrast change vector associated with that video imagethat are greater than a first contrast change value or less than asecond contrast change value. In this embodiment, Gc indicates the countof cells having an inter-image contrast difference of a magnitudegreater than or equal to three units of the standard deviation measure.Contrast differences meeting or exceeding this value are considered tobe produced by cuts. The contrast difference value, Gc, for video imagek can be calculated using the following formulas: ##EQU7##

Next, in step 54, cut detector 30 determines whether a cut has beendetected for the video image under consideration. Cut detector 30employs three independent tests to determine whether a cut has beendetected. First, if the filtered spike size value, g k!, for video imagek exceeds a threshold value (0.045 in this embodiment) and the ratio ofthe filtered spike size value, g k!, to the difference between one andthe inter-image similarity value, S_(k), exceeds a second threshold (0.6in this embodiment) then a small spike cut event centered at video imagek is detected. Second, if the filtered spike size value, g k!, for videoimage k exceeds another threshold (0.13 in this embodiment), then alarge spike cut event centered at video image k is detected. Third, ifthe contrast difference value, Gc k!, for video image k exceeds anotherthreshold (45 in this embodiment) and the difference between thecontrast difference value for video image k and the maximum of thecontrast difference values for a plurality of other video images in theneighborhood of video image k (in this embodiment--Gc k-1! and Gc k+1!)exceeds another threshold (7 in this embodiment), then a cut eventcentered at video image k is detected. Any one of these occurrences maycause a cut to be detected in step 54. Other methods of detecting cutscan be used without departing from the scope of the invention.

This method may in some instances detect a cut where no cut exists.Thus, an error check is applied in step 56 to determine whether a truecut has been detected. When a cut is detected, cut detector 30determines whether the contrast difference value, Gc, for a particularimage exceeds a threshold (25 in this embodiment). If this test is met,a cut is recognized and cut detector 30 generates an event in step 58indicating that a cut has been detected in the digital video signal atvideo image k. Then, in step 60, if video image k is not the last imagein the digital video signal, the process begins again at step 46.Otherwise, the procedure terminates in step 62. If no cut was detectedin step 54 or if the error checking function revealed an erroneous cutdetection in step 56, then the method proceeds to step 60 from either ofsteps 54, 56. The error checking step 56 could be omitted withoutdeparting from the scope of the invention.

Although the illustrated embodiment utilizes the interimage similarityvalue defined above based upon the cell contrast vector, a similarmethod could be used to detect cuts using an interimage similarity valuebased upon the cell intensity vector. In this alternative embodiment,the interimage similarity value comprises the cosine of the anglebetween the cell intensity vector for the current image and the cellintensity vector for a prior image. Although different thresholds may beused for cut detection with this similarity value, the remaining stepsof the method can be applied to detect cuts based upon the cellintensity vectors.

FIG. 5 illustrates a method for detecting blank and/or uniform images ina digital video signal in accordance with the invention. This method isperformed by blank/uniform image detector 32 in video transitionapplication 22. A uniform image has a single tone or color appearing asa background. Uniform images are commonly found within programintroductions and credits and within commercials. They often serve as abackground for stationary and scrolled text. Within commercials,fade-to-white and fade-from-white image transition sequences employuniform white images. A blank image is a special case of a uniform imageand comprises an all black image. Normally, blanking is part of a visualtransition sequence where blank images are inserted between cut and/orfade transitions. Blank images are also used when a pause is required toinform the viewer of a change of context, such as between commercials,or to mark a major change in location or time. When blanking is used toseparate commercial and program segments, experimental data indicatesthat blanking times may vary significantly between one and eighty ormore fields. When blanking is used within a program or commercialsegment, experimentally obtained blanking times are more consistent,normally ranging between four and sixteen fields.

The procedure begins in step 64 with initialization and whateverpreparation of the video signal is required. At the conclusion of step64, a digital video signal is ready to be processed by video transitionapplication 22. In step 66, a video image is received by low-levelprocessor 26. Next, in step 68, low level processor 26 segments thevideo image into cells and computes the cell contrast and cell intensityvectors as described above. Low level processor 26 outputs these vectorsto mid-level processor 28. Then, in step 70, mid-level processor 28computes the maximum cell intensity and maximum cell contrast values forthe video image. Mid-level processor 28 then outputs these values toblank/uniform image detector 32.

In step 72, blank/uniform image detector 32 determines whether the videoimage is a uniform image. It does so by comparing the maximum cellcontrast value to a threshold value (5.0 in this embodiment). If themaximum cell contrast is below the threshold, then a uniform image isdetected and a uniform image event is generated in step 74. Then, instep 76, blank/uniform image detector 32 compares the maximum cellintensity to a second threshold (35 in this embodiment) and the maximumcell contrast to a third threshold (4.0 in this embodiment) and if boththe maximum cell intensity and maximum cell contrast for the image underconsideration are less than their respective thresholds, then a blankimage is detected and a blank image event is generated in step 78. In analternative embodiment, a blank image could be detected by comparingonly the maximum cell intensity to a threshold. Following step 78, it isdetermined in step 80 whether the image under consideration was the lastimage or not. If so, then the procedure terminates at step 82. If not,then the procedure processes the next digital image by returning to step66. If a uniform image was not detected in step 72 or if a blank imagewas not detected in step 76, execution proceeds to step 80. Thethresholds used in this embodiment may depend on the digitizer used todigitize the video signal and should be experimentally determined. FIG.6 illustrates a method for detecting fades in a digital video signal inaccordance with the invention. Fade detector 34 of video transitionapplication 22 may detect fades in a video signal using the methoddisclosed in FIG. 6. A fade-out transition moves the viewer of a videofrom a scene and camera shot to a uniform target image. Normally, thetarget image is a blank or a black field, but in some instances, thetarget image may be white. The fade-in, opposite in effect from thefade-out, moves the viewer from a uniform black or white image to a newscene. A time-weighted average of the uniform image and the departing orarriving scene is used to generate fades.

The duration of fade transitions is widely variable. Transition dataexperimentally obtained included fades with lengths between eight andfifty fields with a modal value of eighteen and median value of twentyfields. Other data included fades as long as 200 fields.

Fade-out and fade-in transitions are often used in combination, forminga transition sequence separating one scene from another. The new scenewill often describe action in a different location, at a different time,or of a different nature. In network broadcast programming,fade-to-black transition sequences occur most frequently at thebeginning and ending of program and commercial segments. Fade-to-whiteand fade-from-white sequences are normally used only within a programsegment or within a commercial spot.

The method begins in step 84 with initialization and whateverpreparation of the video signal is required. At the conclusion of step84, video transition application 22 is ready to process a digital videosignal. In step 86, a video image is received by low level processor 26.Then, in step 88, low level processor 26 segments the image into cellsand computes the cell contrast and cell intensity vectors as describedabove. Low level processor 26 outputs the cell contrast and cellintensity vectors to mid-level processor 28. In step 90, mid-levelprocessor 28 computes the intensity change vector, maximum cell contrastvalue, and maximum cell intensity value for the video image. Thesevalues are output to fade detector 34.

Next, in step 92, fade detector 34 generates a fade value for the videoimage being processed. Collectively, the fade values for a series ofvideo images create a fade signal. The fade value, F k!, for a videoimage comprises the difference between the total number of elements ofthe intensity change vector, b_(k), for the video image that have avalue between a first lower limit and a first upper limit and the totalnumber of elements of the intensity change vector, b_(k), for the videoimage that have a value between a second lower limit and a second upperlimit. This is a histogram-type measure and uses histogram Hb_(k).Histogram intervals of 0.3 units are used in this embodiment. It hasbeen determined experimentally that fade events produce brightnessdifferences detectable by this interval size. Smaller intervals areoverly sensitive to noise in the video signal. The brightness differencehistogram, Hb_(k), can be computed using the following formulas:##EQU8##

The fade value, F k!, for image k in this embodiment comprises the totalof the histogram cells between 0.3 and 5.4 units minus the total of thehistogram cells between -5.4 and -0.3. Differences within this rangereflect a gradual decrease or increase in the overall cell brightness.Differences outside of this range were experimentally found to be toolarge to be produced by fades. Other ranges could be chosen withoutdeparting from the scope of the invention, however. The fade value, Fk!, for image k can be computed using the following formula: ##EQU9##

Continuing with step 92, after the fade value, F k!, has been computedfor a video image, then the fade signal formed by the fade values isfiltered to produce a filtered fade signal. The filtered fade signalcomprises a plurality of filtered fade values wherein each filtered fadevalue is associated with a particular video image. A Gaussian filterwith μ=k, σ=10, is applied to the absolute value of the fade signal,averaging totals over a 60 image (-3σ to +3σ) window centered aboutimage k. Other filter types and sizes could be used without departingfrom the scope of the invention. The filtered fade value, f k! for aparticular image k can be computed using the following formula:##EQU10##

After the filtered fade value, f k!, has been calculated for a videoimage, the process continues in step 94 where it is determined whether afade has been detected. A fade is detected for a particular video imagek if the filtered fade value for that image, f k!, exceeds a thresholdvalue (15 in this embodiment). This embodiment of the invention,however, will indicate fades only where image k comprises the center ofa fade. The fade center is defined as the point where the fade value forimage k, f k!, exceeds the threshold value and where f k!>f k+1!. If thecenter of a fade is detected, then it is determined in step 96 whetheror not the fade event is truly a fade event. Fade detector 34 determineswhether the fade event is truly a fade event for image k by determiningthe sign of the fade value, F k!, for that image and by examining themaximum cell intensity and maximum cell contrast within a neighborhoodof image k. This process also identifies the type of fade detected asdescribed in Table 1.

                  TABLE 1    ______________________________________    Fade Type Codes as Derived from Signal Values    ______________________________________    F k!>0   B.sub.k-30 <40                       C.sub.k+30 >5                                 FADE.sub.-- IN (from black)    F k!>0   B.sub.k-30 >=40                       C.sub.k+30 <=5                                 FADE.sub.-- OUT (to white)    F k!<0   B.sub.k+30 >=40                       C.sub.k-30 <=5                                 FADE.sub.-- IN (from white)    F k!<0   B.sub.k+30 <40                       C.sub.k-30 >5                                 FADE.sub.-- OUT (to black)    ______________________________________

As described in Table 1, if the fade value for image k is positive, themaximum cell intensity within a neighborhood of image k and image k-30is less than a threshold (40 in this embodiment) and the maximum cellcontrast within a neighborhood of image k and image k+30 is greater thana threshold (5 in this embodiment) then a fade-in from black isdetected. Similarly, with a positive fade value for image k, a maximumcell intensity greater than a threshold in a negative neighborhood aboutimage k, and a maximum cell contrast less than a threshold in a positiveneighborhood about image k, a fade-out to white is detected. Differentsize neighborhoods or thresholds could be used without departing fromthe scope of the invention. For a fade value for image k that isnegative, a fade-in from white is detected where the maximum cellintensity within a positive neighborhood about image k exceeds athreshold and where the cell contrast for a negative neighborhood aboutimage k is less than a threshold. Finally, a fade-out to black isdetected where the fade value for image k is negative, the maximum cellintensity in a positive neighborhood about image k is less than athreshold and the maximum cell contrast in a negative neighborhood aboutimage k exceeds a threshold. If none of these types of fades aredetected, then it is determined that a true fade does not exist and themethod proceeds to step 100 where it is determined whether the currentimage is the last image in the digital video signal. If so, theprocedure terminates in step 102. If not, then the next digital image isprocessed beginning with step 86.

Returning to step 96, if a true fade was detected, then in step 98, afade event indicating the type of fade (in or out, and black or white)is generated. The procedure then continues at step 100 as discussedabove. Similarly, if no fade was detected in step 94, the procedurecontinues in step 100.

Alternatively, step 96 could be omitted and the type of fade couldsimply be determined in step 98. If this option is chosen, then forimage k and a fade value greater than zero, a fade-in from black wouldbe indicated where the maximum cell contrast in a negative neighborhoodabout image k is less than a threshold and a fade-out to white would beindicated where the maximum cell contrast in a positive neighborhoodabout image k is less than a threshold. Similarly, where the fade valuefor image k is less than zero, a fade-in from white event would beindicated where the maximum cell contrast in a negative neighborhoodabout image k is less than a threshold and a fade-out to black would beindicated where the maximum cell contrast in a positive neighborhoodabout image k was less than a threshold.

Any of the thresholds and ranges for the neighborhoods can be changedwithout departing from the scope of the invention. Various other methodsof detecting false fades could also be used without departing from thescope of the invention.

FIG. 7 illustrates a method of detecting dissolve transitions in adigital video signal in accordance with the invention. Dissolve detector36 of video transition application 22 may use this method to detectdissolve transitions. Dissolve transitions move the viewer of a videosignal between two camera shots, A and B, by averaging them over time. Aweighted average is used which gradually reduces the intensity of shotA, and increases that of B. Experimentally determined transition dataincluded dissolves with lengths ranging from ten to one hundred twofields of an NTSC video signal with a modal value of sixteen and amedian value of eighteen fields. Other samples had dissolves as long asone hundred eighty fields.

The method begins in step 104 with initialization and whateverpreparation of the video signal is required. At the end of step 104, avideo signal is ready to be processed by video transition application22. In step 106, a video image is received by low level processor 26.Then, in step 108, low level processor 26 segments the video image intocells and computes the cell contrast and cell intensity vectors asdescribed above. The cell contrast and cell intensity vectors are outputto mid-level processor 28. In step 110, mid-level processor 28 computesa contrast change vector and maximum cell contrast value for the videoimage. These are output to dissolve detector 36.

In step 112, a first dissolve signal and a second dissolve signal aregenerated. The first dissolve signal comprises a series of firstdissolve values each associated with a video image while the seconddissolve signal comprises a series of second dissolve values, eachassociated with a video image. The first dissolve signal is used tomeasure fast dissolves (those dissolves taking from 16 to 60 fields tocomplete) while the second dissolve signal is used to measure slowdissolves (those dissolves taking between 60 and 180 fields tocomplete). The first and second dissolve values for a video image arecomputed using a contrast difference histogram, Hc_(k). Histogramintervals of 0.5 units are used in this embodiment. Experimentallyrecorded dissolve transitions were found to produce contrast differencesdetectable by this interval size. Other interval sizes could be usedwithout departing from the scope of the invention. Contrast differencehistogram, Hc_(k), can be computed using the following formulas:##EQU11##

The first and second dissolve values are generated by multiplying thecontrast difference histogram, Hc_(k), within a limited frequency rangeof cell contrast differences times β_(k), a gain value. β_(k) is a gainvalue which tends to increase dissolve values in response to lowercontrast maximums. First dissolve value, D1 k! and second dissolve valueD2 k!, for image k can be calculated using the following formulas:##EQU12## Other gain values could also be used in formulas 19 and 20.

Next, in step 114, the first and second dissolve signals, comprised ofthe series of first and second dissolve values, are filtered to producea first filtered dissolve signal and second filtered dissolve signal,each comprising a plurality of filtered values each associated with aspecific video image. Filtering of the first and second dissolve signalsis accomplished by convolving each signal with a specific difference ofGaussian function. A difference of Gaussians is used to avoid detectinga dissolve where a camera is panning in a scene or where a scene has lowcontrast for a long period of time. Filter window sizes of 120 and 240video images are used in this embodiment. Filter window sizes may varydepending upon the video frame rate and/or the signal scanning method.The first filtered value, d1 k! and second filtered value, d2 k!, forvideo image k can be calculated using the following formulas: ##EQU13##

It is then determined in step 116 whether a dissolve has been detectedor not. A fast dissolve is detected when the first dissolve signal isgreater than a first threshold value (22 in this embodiment). Dissolvedetector 36 only generates a dissolve event, however, when the center ofthe dissolve is reached. The center of a fast dissolve is the positionat which the first filtered value for that image is greater than thethreshold and the first filtered value for image k exceeds the firstfiltered value for image k+1. Similarly, a slow dissolve centered atimage k is detected where the second filtered value is greater than athreshold (17 in this embodiment) and the second filtered value forimage k is greater than the second filtered value for image k+1. Ifeither type of dissolve is detected, then an appropriate dissolve eventis generated at step 118. If no dissolve was detected in step 116, theprocess continues in step 120 where it is determined whether the videoimage being processed is the last image. If not, then the next image isprocessed starting at step 106. If so, then the procedure terminates atstep 122.

FIG. 8 illustrates a method for detecting the type of production mediaused to produce a digital video signal in accordance with the invention.Media detector 38 of video transition application 22 may use this methodto identify the type of production media used for a particular videosignal. A useful index for broadcast video is an identification of theoriginal production media. Specifically, one might desire to knowwhether the original production was videotaped or whether it was filmed.An NTSC broadcast signal that was videotaped has a sixty field persecond (thirty frame per second) rate. However, cartoons may have atwelve or twenty-four frame per second rate while a film normally has atwenty-four frame per second rate. To translate a cartoon or a film intoan NTSC broadcast signal, some frames are repeated. For a twenty-fourframe per second film, the frames are sent in a 3-2 field presentationwherein a first frame of the film is broadcast during the first threefields of an NTSC broadcast signal and the second frame of the film isbroadcast during the fourth and fifth fields of the NTSC broadcastsignal. This 3-2 pattern continues for each frame in the film. For acartoon with a twelve frame per second rate, each frame is broadcastduring five consecutive fields of an NTSC broadcast signal.

Media detector 38 of video transition application 22 identifies eachvideo clip within a digital video signal as having been recorded eitheron film or on videotape. Media detector 38 employs a set of fivefinite-state machines whose outputs are combined to determine thepresence and length of a twenty-four frame per second or twelve frameper second segment. More or less state machines could be used. Eachfinite-state machine is designed to synchronize to a twenty-four frameper second signal with a specific phase. These state machines will alsosynchronize with a twelve frame per second signal with a specific phase.Because the 3-2 field presentation rate of a twenty-four frame persecond film is fixed and periodic, it can be represented by a squarewave with a period five fields long. The leading edge of this waveformwith respect to the start of the clip is considered to be its phase.Individual finite-state machines process the digital video signal todetect the leading and trailing edges of frame changes and compare thesepositions to those matching their internal hard-coded phase pattern. Acount of images matching the pattern is maintained and recorded by eachstate machine.

Each state machine is a five-state automaton, counting images in thevideo stream that match its phase configuration. The phase of each statemachine is said to match a given phase pattern as long as frame-to-framechanges occur at the appropriate image positions. While matching issuccessful, the finite-state machines' output count is increased. When amatch fails, the finite-state machine resets this count to zero.

The process begins in step 124 with initialization and whateverpreparation of the video signal is required. At the end of step 124, adigital video signal is ready to be processed by video transitionapplication 22. In step 126, a video image is received by low levelprocessor 26. In step 128, low level processor 26 segments the imageinto cells and computes the cell contrast and cell intensity vectors forthe image. These vectors are output to mid-level processor 28. Mid-levelprocessor 28, in step 130, computes the inter-image similarity value, asdiscussed above. This value is output to media detector 38.

In step 132, the run length for each of the five finite-state machinesis updated in accordance with Table 2. The state of each finite-statemachine is also changed in accordance with Table 2.

                  TABLE 2    ______________________________________    Present   Next          Next Count    State     State         Output m=    ______________________________________    A         B             m+1    B         C             if S>T.sub.new m+1 else 0    C         D             if S>T.sub.new m+1 else 0    D         E             m+1    E         A             if S>T.sub.new m+1 else 0    ______________________________________

As described in Table 2, a threshold value (0.993 in this embodiment) isused to determine whether an image k is different from image k-1. Whenthe inter-image similarity value S_(k) is less than the threshold value,it is determined that a new image is present and a leading or trailingedge has been found. Otherwise, the previous image, or one virtuallyidentical to it, is present and no edge is detected.

In step 134, the maximum run length is updated. A combiner in mediadetector 38 compares the output counts of all five finite-state machinesafter the processing of each image and selects the maximum value as thecurrent twenty-four frame per second run length. The combiner terminatesa run as soon as the current run length is smaller than the previous runlength. The previous run length is reported as the number of imagesfound in the twenty-four frame per second video clip.

In step 136, it is determined whether the maximum run length hasexceeded 60 video images (60 fields in this embodiment). A minimum runlength of 60 video images causes media detector 38 to identify aparticular video clip as a twenty-four frame per second clip. Anotherrun length threshold could also be used. Video segments not identifiedas twenty-four frame per second clips are, by default, assumed to bethirty frame per second clips. Video clips that are twelve frame persecond cartoons will be detected as twenty-four frame per second clipsin this embodiment. Alternatively, an additional state machine or statemachines could be used to differentiate between twenty-four frame persecond filmed video clips and twelve frame per second cartoon videoclips.

If the maximum run length did not exceed 60 in step 136, then it isdetermined in step 146 whether the image being processed is the lastimage in the video signal. If not, then the next image is processedbeginning with step 126. If so, then the procedure terminates in step148.

If the maximum run length was greater than 60 in step 136, then it isdetermined whether the maximum run length is greater than the previousmaximum run length in step 140. If so, then the maximum run length isupdated in step 142. If not, then a film detect event is generated instep 138 with the previous maximum run length stored as the run lengthfor the event. In step 144, the run length counters are reset. If themaximum run length was updated in step 142, then a check is made in step143 to determine whether the current image is the last image. If so,then a film detect event is generated in step 145 with the maximum runlength counter stored as the run length.

Media detector 38 also generates an event in step 144 for event resolver40. This event identifies the number of the image where a twenty-fourframe per second clip began as well as the run length of that clip.

Returning to FIG. 2, when any of the transitional markers are detectedby one of the detectors 30-38, the events generated by the detectors30-38 are sent to event resolver 40. Event resolver 40 resolves multipleand overlapping events and generates a timeline identifying thetransitional markers encountered within a particular digital videosignal.

Because the detectors 30-38 operate independently, it is possible formultiple or overlapping events to be indicated. For example, dissolvedetector 36 can be triggered by fades of certain durations or by a cutto blanking. Also, dissolves whose length is in between the slow andfast averaging window can cause both events to be placed in the eventstream if they are centered on different image numbers. Fast fades inthe video signal can cause a cut event to be detected between the lastfaded image and the following blank field. Event resolver 40 removesambiguities caused by these and other similar conditions.

Event resolver 40 chooses which event to report when multiple,overlapping, or conflicting events are indicated. The technique used byevent resolver 40 is to choose an event based upon a predeterminedpreferred event priority and a minimum separation distance required ofeach event. Event priorities, from highest to lowest, and their requiredspacing are listed in Table 3. Minimum separation distances, measured inimage counts (field counts in this embodiment) were experientiallydetermined by examining event lengths and inter-event gaps found insample broadcast video signals.

                                      TABLE 3    __________________________________________________________________________    Event Priorities and Minimum Separation Distances                   Minimum Event Separation Distance (in fields)    Event Type Priority                   blnk                       unif                           fadi                               fado                                   cut dfst                                           dslw    __________________________________________________________________________    BLANK.sub.-- FIELD               1   1   1    8   8  15  50  100    UNIFORM.sub.-- FIELD               2   *   1    8   8  15  50  100    FADE.sub.-- IN               3   *   *   30  30  30  65  115    FADE.sub.-- OUT               3   *   *   30  30  30  65  115    CUT        4   *   *   *   *   10  50  100    DISSOLVE.sub.-- FAST               5   *   *   *   *   *   100 150    DISSOLVE.sub.-- SLOW               6   *   *   *   *   *   *   200    __________________________________________________________________________

Event resolution proceeds as follows. The event stream is scanned tofind the image position, k, of the next indicated event. If the eventstream for image k specifies more than one event, the highest priorityevent, E, is selected according to Table 3. Other indicated events atposition k are removed.

Having found an event E, a second scan is initiated proceeding bothforward and backward in the event stream beginning at images k+1 andk-1. If events of equal or lower priority are found in the scan window,these events are removed from the stream. The minimum separationdistance specified in the table, minus one, is the length of thescanning window for each equal or lower priority event which may beencountered. Higher priority events are not removed if they occur in thescanning window.

Event resolver 40 produces both a video annotation report and a videotimeline. These items are placed in an output file with the videoannotation report occurring first. Frame-rate events are always reportedand are not altered by event resolver 40.

It should be understood that the invention is not limited to theillustrated embodiment and that a number of substitutions can be madewithout departing from the scope and teachings of the present invention.For example, although video transition application 22 is a softwareapplication, all or a portion of the functions performed by videotransition application 22 could be performed in hardware. Also, althoughthe present embodiment processes NTSC broadcast video signals comprisinga series of frames each comprised of two fields, the invention could beused for any type of video signal.

This embodiment of video transition application 22 performs segmentationon each field of an NTSC broadcast video signal. Alternatively, themethods of the invention could be used by segmenting only every otherfield, every other frame, etc. of the NTSC broadcast video image.Similarly, even if all fields or all frames are segmented, the variousimage features such as the cell contrast and intensity vectors mightonly be computed for a subset of the segmented video images. Also, asubset of the pixels within each cell might be used to compute the cellcontrast and cell intensity values for that cell. Similarly, a subset ofthe cell intensity and cell contrast values for a video image might beused to form the cell contrast and cell intensity vectors. Certainthresholds were described herein. These thresholds could all vary fromthe thresholds described without departing from the scope of theinvention. Other substitutions are also possible and can be made withoutdeparting from the spirit and scope of the invention as defined by theappended claims.

What is claimed is:
 1. A method of detecting dissolve transitions in adigital video signal made up of a series of video images,comprising:segmenting a plurality of the video images, each of theplurality of video images segmented into a first number of cells, eachcell comprising a second number of pixels, a pixel having a pixelintensity value representing the intensity of the pixel; generating aplurality of cell contrast vectors each associated with one of thesegmented video images, each element of the cell contrast vectorassociated with one of the cells and comprising the standard deviationof the pixel intensity values for the pixels in that cell; generating afirst dissolve-detect signal for a segmented video image in response tothe cell contrast vector for that video image.
 2. The method of claim 1,further comprising:generating a plurality of contrast change vectorseach associated with one of the segmented video images, the contrastchange vector for a video image comprising the cell contrast vector forthat video image minus the cell contrast vector for another video image;calculating the maximum cell contrast for each of the segmented videoimages, the maximum contrast for an image comprising the value of thelargest element of the cell contrast vector for that image; generating afirst dissolve signal comprising a plurality of first dissolve values,each first dissolve value associated with a segmented video image, thefirst dissolve value for a specific image comprising a valueproportional to the sum of the total number of elements of the contrastchange vector for the specific image having a value between a firstlower limit and a first upper limit and the total number of elements ofthe contrast change vector for the specific image having a value betweena second lower limit and a second upper limit; and wherein the step ofgenerating a first dissolve-detect signal further comprises generating afirst dissolve-detect signal for a segmented video image in response tothe first dissolve value for that video image.
 3. The method of claim 1,further comprising:filtering the first dissolve signal to produce afirst filtered dissolve signal comprising a plurality of first filteredvalues, each first filtered value associated with a segmented videoimage; wherein the step of generating a first dissolve-detect signalfurther comprises generating a first dissolve-detect signal for asegmented video image if the first filtered value associated with thatsegmented video image exceeds a first threshold value.
 4. The method ofclaim 1, wherein each video image comprises a field of a video signal.5. The method of claim 1, wherein each video image comprises a frame ofa video signal.
 6. The method of claim 3, wherein the contrast changevector for a video image comprises the contrast change vector for thatvideo image minus the contrast change vector for the same field in theimmediately prior frame of the digital video signal.
 7. The method ofclaim 3, wherein the filtering step further comprises convolving thefirst dissolve signal with a difference of Gaussians function.
 8. Themethod of claim 3, wherein a first dissolve is centered at a video imagedesignated as the center video image if the first filtered valueassociated with that video image exceeds the first threshold value andif the first filtered value associated with that video image exceeds thefirst filtered value associated with the immediately following videoimage.
 9. The method of claim 3, further comprising:generating a seconddissolve signal comprising a plurality of second dissolve values, eachsecond dissolve value associated with a segmented video image, thesecond dissolve value for a specific image comprising a valueproportional to the sum of the total number of elements of the contrastchange vector for the specific image having a value between a thirdlower limit and a third upper limit and the total number of elements ofthe contrast change vector for the specific image having a value betweena fourth lower limit and a fourth upper limit; filtering the seconddissolve signal to produce a second filtered dissolve signal comprisinga plurality of second filtered values, each second filtered valueassociated with a segmented video image; generating a seconddissolve-detect signal for a segmented video image if the secondfiltered value associated with that segmented video image exceeds asecond threshold value.
 10. The method of claim 9, wherein the firstdissolve-detect signal indicates a slow dissolve event and the seconddissolve-detect signal indicates a fast dissolve event.
 11. The methodof claim 9, wherein the step of filtering the second dissolve signalfurther comprises convolving the second dissolve signal with adifference of Gaussian's function; andwherein a second dissolve iscentered at a video image designated as the center video image if thesecond filtered value associated with that video image exceeds thesecond threshold value and if the second filtered value associated withthat video image exceeds the second filtered value associated with theimmediately following video image.
 12. A computerized system fordetecting dissolve transitions in a digital video signal made up of aseries of video images, comprising:a computer-readable medium; and acomputer program encoded on the computer-readable medium, the computerprogram further operable to segment a plurality of the video images,each of the plurality of video images segmented into a first number ofcells, each cell comprising a second number of pixels, a pixel having apixel intensity value representing the intensity of the pixel; generatea plurality of cell contrast vectors each associated with one of thesegmented video images, each element of the cell contrast vectorassociated with one of the cells and comprising the standard deviationof the pixel intensity values for the pixels in that cell; and generatea first dissolve-detect signal for a segmented video image in responseto the cell contrast vector for that video image.
 13. The computerizedsystem of claim 12, wherein the computer program is further operableto:generate a plurality of contrast change vectors each associated withone of the segmented video images, the contrast change vector for avideo image comprising the cell contrast vector for that video imageminus the cell contrast vector for another video image; calculate themaximum cell contrast for each of the segmented video images, themaximum contrast for an image comprising the value of the largestelement of the cell contrast vector for that image; generate a firstdissolve signal comprising a plurality of dissolve values, each dissolvevalue associated with a segmented video image, the dissolve value for aspecific image comprising a value proportional to the sum of the totalnumber of elements of the contrast change vector for the specific imagehaving a value between a first lower limit and a first upper limit andthe total number of elements of the contrast change vector for thespecific image having a value between a second lower limit and a secondupper limit; and generate a first dissolve-detect signal for a segmentedvideo image in response to the first dissolve value for that videoimage.
 14. The computerized system of claim 13, wherein the computerprogram is further operable to:filter the first dissolve signal toproduce a first filtered dissolve signal comprising a plurality of firstfiltered values, each first filtered value associated with a segmentedvideo image; and generate a first dissolve-detect signal for a segmentedvideo image if the first filtered value associated with that segmentedvideo image exceeds a first threshold value.
 15. The computerized systemof claim 13, wherein the contrast change vector for a video imagecomprises the contrast change vector for that video image minus thecontrast change vector for the same field in the immediately prior frameof the digital video signal.
 16. The computerized system of claim 14,wherein the computer program filters the first dissolve signal byconvolving it with a difference of Gaussian's function.
 17. Thecomputerized system of claim 14, wherein a first dissolve is centered ata video image designated as the center video image if the first filteredvalue associated with that video image exceeds the first threshold valueand if the first filtered value associated with that video image exceedsthe first filtered value associated with the immediately following videoimage.
 18. The computerized system of claim 14, wherein the computerprogram is further operable to:generate a second dissolve signalcomprising a plurality of second dissolve values, each second dissolvevalue associated with a segmented video image, the second dissolve valuefor a specific image comprising a value proportional to the sum of thetotal number of elements of the contrast change vector for the specificimage having a value between a third lower limit and a third upper limitand the total number of elements of the contrast change vector for thespecific image having a value between a fourth lower limit and a fourthupper limit; filter the second dissolve signal to produce a secondfiltered dissolve signal comprising a plurality of second filteredvalues, each second filtered value associated with a segmented videoimage; generate a second dissolve-detect signal for a segmented videoimage if the second filtered value associated with that segmented videoimage exceeds a second threshold value.
 19. A computerized systemdetecting dissolve transitions in a digital video signal made up of aseries of video images, comprising:a storage medium; a processor coupledto the storage medium; a digital video signal source coupled to thestorage medium and providing the digital video signal to the system; acomputer program stored in the storage medium, the computer programoperable to run on the processor and process the digital video signal,the software further operable to segment a plurality of the videoimages, each of the plurality of video images segmented into a firstnumber of cells, each cell comprising a second number of pixels, a pixelhaving a pixel intensity value representing the intensity of the pixel;generate a plurality of cell contrast vectors each associated with oneof the segmented video images, each element of the cell contrast vectorassociated with one of the cells and comprising the standard deviationof the pixel intensity values for the pixels in that cell; generate aplurality of contrast change vectors each associated with one of thesegmented video images, the contrast change vector for a video imagecomprising the cell contrast vector for that video image minus the cellcontrast vector for another video image; calculate the maximum cellcontrast for each of the segmented video images, the maximum contrastfor an image comprising the value of the largest element of the cellcontrast vector for that image; generate a first dissolve signalcomprising a plurality of dissolve values, each dissolve valueassociated with a segmented video image, the dissolve value for aspecific image comprising a value proportional to the sum of the totalnumber of elements of the contrast change vector for the specific imagehaving a value between a first lower limit and a first upper limit andthe total number of elements of the contrast change vector for thespecific image having a value between a second lower limit and a secondupper limit; filter the first dissolve signal to produce a firstfiltered dissolve signal comprising a plurality of first filteredvalues, each first filtered value associated with a segmented videoimage; generate a first dissolve-detect signal for a segmented videoimage if the first filtered value associated with that segmented videoimage exceeds a first threshold value.
 20. The computerized system ofclaim 19, wherein the computer program is further operable to:generate asecond dissolve signal comprising a plurality of second dissolve values,each second dissolve value associated with a segmented video image, thesecond dissolve value for a specific image a value proportional to thesum of the total number of elements of the contrast change vector forthe specific image having a value between a third lower limit and athird upper limit and the total number of elements of the contrastchange vector for the specific image having a value between a fourthlower limit and a fourth upper limit; filter the second dissolve signalto produce a second filtered dissolve signal comprising a plurality ofsecond filtered values, each second filtered value associated with asegmented video image; generate a second dissolve-detect signal for asegmented video image if the second filtered value associated with thatsegmented video image exceeds a second threshold value.